草庐IT

java - eclipse 不工作 - 没有找到 java 虚拟机

全部标签

ruby-on-rails - Rails Resque 工作人员因 PGError : server closed the connection unexpectedly 失败

我在Ubuntu9.10、Rails2.3.4、ruby-ee2010.01、PostgreSQL8.4.2上有站点运行rails应用程序和在生产模式下运行的resqueworkerWorkers不断报错:PGError:serverclosedtheconnectionunexpectedly.我最好的猜测是masterresque进程建立了与db的连接(例如,authlogic在使用User.acts_as_authentic时会这样做),同时加载Rails应用程序类,并且该连接在fork()ed进程(退出时?)中被破坏,所以下一个fork的child会得到一种splinter的全

ruby - 在没有 `autoload` 的情况下在 Ruby 中自动加载类

我爱theautoloadfunctionalityofRuby;然而,它是goingawayinfutureversionsofRuby因为它从来都不是线程安全的。所以现在我想假装它已经消失并在没有它的情况下编写我的代码,方法是自己实现延迟加载机制。我想以最简单的方式实现它(我现在不关心线程安全)。Ruby应该允许我们这样做。让我们从扩充一个类开始const_missing:classDummydefself.const_missing(const)puts"const_missing(#{const.inspect})"super(const)endend当我们尝试引用“Dummy

ruby-on-rails - Ruby:在没有 Rails 的情况下从 gem 访问 rake 任务

我知道Rake任务可以在Rubygem中的许多地方定义:在Rakefile中在tasks/*.rake中在lib/tasks/*.rake中我读到前两个应该在gem本身上执行任务时使用。当任务需要公开时,似乎应该选择第三个选项。有许多在线教程演示了使用Rails从gem加载Rake任务的各种方法,即利用Rails::RailTie。但是,我想找到一种在不需要Rails的情况下在另一个gem中使用依赖项gem的任务的方法。有没有简单的解决方法?是否有人愿意描述正确的方法,或概述哪些方法可行?更新我已经尝试创建一个文件bin/my-gem以便在系统上可以从my-gem执行Rake任务。我已

ruby - Ruby 是否有正式的规范(如 Java 语言规范 (JLS))?

Ruby是否有明确的规范,类似于Java的Java语言规范。谷歌搜索ruby​​语言规范提供http://ruby-std.netlab.jp/结果,该站点已关闭,我不确定它是否是最新的 最佳答案 有adraft对于formalspecificationruby。它由OpenStandardsPromotionCenter开发的Information-TechnologyPromotionAgency(日本政府机构)提交给JapaneseIndustrialStandardsCommittee然后进一步到InternationalO

ruby - 如何找到在 Ruby 中定义常量的位置?

使用pry,通过edit-method命令可以非常简单地找到定义方法的位置并查看源代码。然而,类本身没有对应关系。当该类本身没有定义任何方法时,很难通过pry找到来源。类是常量,所以这相当于询问在哪里可以找到定义特定Ruby常量的源代码。非常感谢。 最佳答案 在ruby​​中,$"保存所有通过Kernel.load加载的文件名。所以你可以尝试这样的事情:constant=User$".detect{|load_path|load_path.include?(constant.to_s.underscore)}注意:underscor

ruby - 有没有办法使 Ruby 临时文件永久化?

如果我通过Tempfile创建了一个临时文件,除了将它复制到另一个文件之外还有什么方法可以使它成为“永久”文件吗?我想避免在关联的Tempfile实例被垃圾回收或进程终止时删除它。与此相关,有没有一种方法可以利用Tempfile机制(或使用类似的机制)来获取"new"文件名,而无需以该名称创建文件? 最佳答案 不是真的。对于问题本身,请参见:ObjectSpace.undefine_finalizer(tmpfile)Tempfile库使用RubyObjectSpace终结器在垃圾回收时自动删除自身。通过使用上面的行,如果你不删除它

尽管安装了 ruby​​ gem,但未找到

我在SO上发现了一些类似的问题,但似乎没有一个符合我的情况(抱歉,如果我忽略了)。这是我的问题:我将oauth-plugingem安装到ruby​​gems目录,但是尝试在rails应用程序中使用它告诉我找不到它。以下是相关命令的输出:安装%sgeminstalloauth-pluginSuccessfullyinstalledoauth-plugin-0.3.141geminstalledInstallingridocumentationforoauth-plugin-0.3.14...InstallingRDocdocumentationforoauth-plugin-0.3.14

ruby-on-rails - Rails CSRF 保护是如何工作的?

当CSRFtoken不匹配时,Rails会引发一个InvalidAuthenticityToken。但是,通过阅读source,我无法弄清楚这实际上是如何发生的。我首先确认该类的树:$ack--ignore-dir=testInvalidAuthenticityTokenactionpack/lib/action_controller/metal/request_forgery_protection.rb4:classInvalidAuthenticityToken:unprocessable_entity只有两次点击,忽略评论。第一个是类定义:classInvalidAuthenti

Ruby 没有将 Fixnum 隐式转换为 String (TypeError)

我正在尝试回答ChrisPine的“学习编程”一书中的以下问题:Leapyears.Writeaprogramthatasksforastartingyearandanendingyearandthenputsalltheleapyearsbetweenthem(andincludingthem,iftheyarealsoleapyears).Leapyearsareyearsdivisibleby4(like1984and2004).However,yearsdivisibleby100arenotleapyears(suchas1800and1900)unlesstheyareal

ruby - Ruby 的 sort_by {rand} 是如何工作的?

我认为这是一个很棒的Ruby单行代码:someArray.sort_by{rand}它简洁明了,可读性强,而且行之有效-但我不太明白如何操作。这是我所知道的:rand计算为0到1之间的数字(例如0.783468632804653)rand在上面的代码中被重复计算,因为将它分配给x首先会破坏随机排序sort_by{0.783468632804653},或我试过的任何其他数字,对数组没有影响ruby-doc.org对我帮助不大inthiscase.谁能一步一步解释一下?更新我现在使用Ruby的时间更长了,我发现我在这里遗漏了一两个概念。关键是:rand是一种方法(定义在内核上);它生成一个